CSS 是用來處理網頁的排版和樣式
基本語法:屬性名稱:屬性內容
1 以文字為例,就有以下常用的屬性font-family
:字體樣式。可以設定一個或多個字體樣式font-size
:字體大小。例如像素(px)、百分比(%)、em、rem 等單位font-weight
:文字粗細。例如正常(normal)或粗體(bold)等大小font-style
:文字的風格。例如斜體(italic)、傾斜(oblique)等line-height
:設定行高。與文字行之間的垂直間距text-align
:設定文字的水平對齊方式。例如置中(center)、向右對齊(right)等text-decoration
:文字的裝飾效果。例如文字下方劃線(underline)、刪除線(line-through)等color
:設定文字的顏色。可以使用顏色名稱(red)、十六進制顏色碼、RGB 值等letter-spacing
:調整文字之間的間距word-spacing
:調整單詞之間的間距text-indent
:設定段落的第一行縮排white-space
:控制文字的空白字元的處理,例如設定為 nowrap
時,可以禁止文字自動換行text-overflow
:當文字內容過長時,用於如何處理溢出的內容text-shadow
:添加文字陰影效果
font-family: Arial, sans-serif;
font-size: 16px;
font-weight: bold;
font-style: italic;
line-height: 1.5;
text-align: center;
text-decoration: underline;
color: #336699;
letter-spacing: 2px;
word-spacing: 5px;
text-indent: 20px;
white-space: nowrap;
text-overflow: ellipsis;
text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
2 若是要在 HTML 上透過標籤來套用 CSS 樣式,必須使用 style
屬性,以下為範例
<p style="font-weight:bold">你好我是一位新手工程師</p>
3 乾淨簡單明瞭的標籤<div>
和 <span>
都沒有預設的標籤樣式,所以需要透過 CSS 來設定,以下為範例
<div style="color:blue">今天天氣真好</div>
4 標籤的模式
<span>、<a>、<strong>
等display: none;
時,該內容不會在頁面上顯示,而且不佔用空間5 選擇器
p {}
.classname {}
#idname {}
h1, h2, h3 {}
ul > li {}
[type="text"] {}
ul li {}
* {}
:hover {}
等p:nth-child(odd) {}
6 選擇器的優先順序
選擇器的優先順序是很重要的一環,它可以幫助解決樣式衝突的問題,來確保網頁顯示如我們預期設定的樣式
它是根據選擇器的特定性來計算的。每個部分都有自己的權重,它們按照以下順序排序:
- Inline 樣式:特定性為1000
- ID 選擇器:特定性值為100
- 類別選擇器、屬性選擇器和偽類選擇器:特定性值為10
使用類別選擇器(.classname
)、屬性選擇器([attribute="value"]
)或偽類選擇器(:hover
)
- 元素選擇器和擴展選擇器:特定性值為1
使用元素選擇器(p
)或擴展選擇器(div p
)
所以要計算特定性,需要將每個部分的權重相加
範例1,如果有以下兩個 CSS
#header {
color: blue;
}
p {
color: red;
}
第一個特定性:ID選擇器(#)= 100,其他部分為0,總特定性為100。
第二個特定性:元素選擇器(p)= 1,其他部分為0,總特定性為1。
由於第一個的特定性更高,所以元素的文字顏色將是藍色
範例2,如果特定性相同,則後面的規則將優先應用
p {
color: red;
}
p {
color: blue;
}
最後<p>
元素的文字顏色會是藍色,因為後面的規則優先應用,所以會覆蓋前面的規則!!